package com.pn.service;

import com.pn.dto.AssignAuthDto;
import com.pn.dto.AssignRoleDto;
import com.pn.entity.Auth;
import com.pn.entity.Result;
import com.pn.entity.Role;
import com.pn.page.Page;

import java.util.List;

public interface RoleService {

    //查询所有角色的业务方法
    public List<Role> getAllRole();

    //根据用户id查询用户已分配的角色的业务方法
    public List<Role> queryUserRoleByUid(Integer userId);

    //分页查询角色的业务方法
    public Page queryRolePage(Page page,Role role);

    //添加角色的业务方法
    public Result saveRole(Role role);

    //启用或禁用角色的业务方法
    public Result setRoleState(Role role);

    //删除角色的业务方法
    public Result deleteRoleById(Integer roleId);

    //查询角色分配的所有权限菜单的id业务方法
    public List<Integer> queryRoleAuthIds(Integer roleId);

    //给角色分配权限的业务方法
    public void saveRoleAuth(AssignAuthDto assignAuthDto);

    //修改角色的业务方法
    public Result setRoleByRid(Role role);

}